HAL SPDIFRX IRQ handler and callbacks functions migration ¶
This section provides information about the HAL SPDIFRX callbacks register/unregister functions migration.
HAL SPDIFRX IRQ handler function ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_SPDIFRX_IRQHandler(SPDIFRX_HandleTypeDef *hspdifrx);
|
HAL_SPDIFRX_IRQHandler(hal_spdifrx_handle_t *hspdifrx);
|
Related use case: Use case: HAL SPDIFRX receptions in interrupt mode
HAL SPDIFRX register/unregister callback functions ¶
HAL SPDIFRX register callback ¶
In HAL1, the function
HAL_SPDIFRX_RegisterCallback()
is used to register various SPDIFRX callbacks through a single function with a specific callback ID, whereas, in HAL2, distinct functions are available to register each specific SPDIFRX callback.
|
HAL 1 |
HAL 2 |
|
|---|---|---|
|
SPDIFRX receive half completed callback |
HAL_SPDIFRX_RegisterCallback(&hspdifrx,
HAL_SPDIFRX_RX_HALF_CB_ID,
USER_SPDIFRX_RxHalfCpltCallback);
|
HAL_SPDIFRX_RegisterDataHalfCpltCallback(&hspdifrx,
USER_SPDIFRX_DataHalfCpltCallback);
|
|
SPDIFRX receive completed callback |
HAL_SPDIFRX_RegisterCallback(&hspdifrx,
HAL_SPDIFRX_RX_CPLT_CB_ID,
USER_SPDIFRX_RxCpltCallback);
|
HAL_SPDIFRX_RegisterDataCpltCallback(&hspdifrx,
USER_SPDIFRX_DataCpltCallback);
|
|
SPDIFRX channel half completed callback |
HAL_SPDIFRX_RegisterCallback(&hspdifrx,
HAL_SPDIFRX_CX_HALF_CB_ID,
USER_SPDIFRX_CxHalfCpltCallback);
|
HAL_SPDIFRX_RegisterControlHalfCpltCallback(&hspdifrx,
USER_SPDIFRX_ControlHalfCpltCallback);
|
|
SPDIFRX channel completed callback |
HAL_SPDIFRX_RegisterCallback(&hspdifrx,
HAL_SPDIFRX_CX_CPLT_CB_ID,
USER_SPDIFRX_CxCpltCallback);
|
HAL_SPDIFRX_RegisterControlCpltCallback(&hspdifrx,
USER_SPDIFRX_ControlCpltCallback);
|
|
SPDIFRX error callback |
HAL_SPDIFRX_RegisterCallback(&hspdifrx,
HAL_SPDIFRX_ERROR_CB_ID,
USER_SPDIFRX_ErrorCallback);
|
HAL_SPDIFRX_RegisterErrorCallback(&hspdifrx,
USER_SPDIFRX_ErrorCallback);
|
|
SPDIFRX Msp init callback |
HAL_SPDIFRX_RegisterCallback(&hspdifrx,
HAL_SPDIFRX_MSPINIT_CB_ID,
USER_SPDIFRX_MspInitCallback);
|
See Generated HAL SPDIFRX initialization and de-initialization sequences for more details. |
|
SPDIFRX Msp Deinit callback |
HAL_SPDIFRX_RegisterCallback(&hspdifrx,
HAL_SPDIFRX_MSPDEINIT_CB_ID,
USER_SPDIFRX_MspDeinitCallback);
|
See Generated HAL SPDIFRX initialization and de-initialization sequences for more details. |
Related concepts:
HAL SPDIFRX unregister callback ¶
In HAL2, the unregister callback API
HAL_SPDIFRX_UnRegisterCallback()
has been removed. Instead, callbacks can be managed by re-registering the default HAL SPDIFRX weak callbacks as needed.
|
HAL 1 |
HAL 2 |
|
|---|---|---|
|
SPDIFRX receive half completed callback |
HAL_SPDIFRX_UnRegisterCallback(&hspdifrx,
HAL_SPDIFRX_RX_HALF_CB_ID);
|
HAL_SPDIFRX_RegisterDataHalfCpltCallback(&hspdifrx,
HAL_SPDIFRX_DataHalfCpltCallback);
|
|
SPDIFRX receive completed callback |
HAL_SPDIFRX_UnRegisterCallback(&hspdifrx,
HAL_SPDIFRX_RX_CPLT_CB_ID);
|
HAL_SPDIFRX_RegisterDataCpltCallback(&hspdifrx,
HAL_SPDIFRX_DataCpltCallback);
|
|
SPDIFRX channel half completed callback |
HAL_SPDIFRX_UnRegisterCallback(&hspdifrx,
HAL_SPDIFRX_CX_HALF_CB_ID);
|
HAL_SPDIFRX_RegisterControlHalfCpltCallback(&hspdifrx,
HAL_SPDIFRX_ControlHalfCpltCallback);
|
|
SPDIFRX channel completed callback |
HAL_SPDIFRX_UnRegisterCallback(&hspdifrx,
HAL_SPDIFRX_CX_CPLT_CB_ID);
|
HAL_SPDIFRX_RegisterControlCpltCallback(&hspdifrx,
HAL_SPDIFRX_ControlCpltCallback);
|
|
SPDIFRX error callback |
HAL_SPDIFRX_UnRegisterCallback(&hspdifrx,
HAL_SPDIFRX_ERROR_CB_ID);
|
HAL_SPDIFRX_RegisterErrorCallback(&hspdifrx,
HAL_SPDIFRX_ErrorCallback);
|
|
SPDIFRX Msp init callback |
HAL_SPDIFRX_UnRegisterCallback(&hspdifrx,
HAL_SPDIFRX_MSPINIT_CB_ID);
|
/* Removed / Sequence changed */
See Generated HAL SPDIFRX initialization and de-initialization sequences for more details. |
|
SPDIFRX Msp Deinit callback |
HAL_SPDIFRX_UnRegisterCallback(&hspdifrx,
HAL_SPDIFRX_MSPDEINIT_CB_ID);
|
See Generated HAL SPDIFRX initialization and de-initialization sequences for more details. |
Related concepts:
HAL SPDIFRX channel transfer complete callback ¶
|
HAL1 |
HAL2 |
|---|---|
void HAL_SPDIFRX_CxCpltCallback(SPDIFRX_HandleTypeDef *hspdif);
|
void HAL_SPDIFRX_ControlCpltCallback(hal_spdifrx_handle_t *hspdifrx);
|
HAL SPDIFRX channel half transfer complete callback ¶
|
HAL1 |
HAL2 |
|---|---|
void HAL_SPDIFRX_CxHalfCpltCallback(SPDIFRX_HandleTypeDef *hspdif);
|
void HAL_SPDIFRX_ControlHalfCpltCallback(hal_spdifrx_handle_t *hspdifrx);
|
HAL SPDIFRX receive complete callback ¶
|
HAL1 |
HAL2 |
|---|---|
void HAL_SPDIFRX_RxCpltCallback(SPDIFRX_HandleTypeDef *hspdif);
|
void HAL_SPDIFRX_DataCpltCallback(hal_spdifrx_handle_t *hspdifrx);
|
HAL SPDIFRX receive half complete callback ¶
|
HAL1 |
HAL2 |
|---|---|
void HAL_SPDIFRX_RxHalfCpltCallback(SPDIFRX_HandleTypeDef *hspdif);
|
void HAL_SPDIFRX_DataHalfCpltCallback(hal_spdifrx_handle_t *hspdifrx);
|
HAL SPDIFRX error callback ¶
|
HAL1 |
HAL2 |
|---|---|
void HAL_SPDIFRX_ErrorCallback(SPDIFRX_HandleTypeDef *hspdif);
|
void HAL_SPDIFRX_ErrorCallback(hal_spdifrx_handle_t *hspdifrx);
|